const User = require('./src/models/user.model');
const mongoose = require('mongoose');

// 连接到MongoDB数据库
async function testRegisterUser() {
  try {
    // 连接数据库
    await mongoose.connect('mongodb://localhost:27017/hallo-chat', { useNewUrlParser: true, useUnifiedTopology: true });
    console.log('数据库连接成功');

    // 测试数据
    const testUser = {
      username: 'testuser' + Date.now(),
      email: 'test' + Date.now() + '@example.com',
      password: 'TestPassword123!'
    };

    console.log('尝试调用User.registerUser方法...');
    // 尝试调用registerUser方法
    const user = await User.registerUser(testUser);
    
    console.log('注册成功！用户信息:', {
      id: user._id,
      username: user.username,
      email: user.email
    });

    // 断开连接
    await mongoose.disconnect();
  } catch (error) {
    console.error('注册失败:', error.message);
    // 输出完整错误堆栈，有助于调试
    console.error(error);
    await mongoose.disconnect();
  }
}

// 运行测试
console.log('开始测试User.registerUser方法');
testRegisterUser();